Personalized training based on planned course and personal assessment

ABSTRACT

Mechanisms are provided for implementing a personalized training recommendation system. A request is received from a user to generate a personalized training regimen for a specified athletic event and event information is identified comprising characteristics of one or more geographical segments of the specified athletic event. Based on the event information, one or more portions of a geographical region are identified that approximate one or more characteristics of the one or more geographical segments within a predetermined tolerance. A training course is generated at least by combining a selected set of the portions of the geographical region based on an evaluation of a level of matching, for each portion, of characteristics of the portion to the one or more physical characteristics associated with the one or more geographical segments of the specified athletic event, which is then presented to the user as the personalized training regimen for the user.

BACKGROUND

The present application relates generally to an improved data processingapparatus and method and more specifically to mechanisms forpersonalizing training based on a planned course and individual personalassessment.

Athletes and other individuals that participate in athletic events oreven personal physical training, typically perform training in gymsusing specialized training equipment. In addition, for some physicaltraining, the training may take place in various physical environments,such as in the case of training of a race, a marathon, an obstaclecourse, or the like. For example, a bicyclist or runner may train byriding their bicycle or running in areas of their physical environment,e.g., along a route or track.

The training is generally directed to helping the individual increasetheir endurance, strengthen the individual, increase lung capacity,become faster, and the like, in a generalized manner. Even customtraining regimens, or working with a training expert one on one, willfocus on general areas of weakness of the individual.

SUMMARY

This Summary is provided to introduce a selection of concepts in asimplified form that are further described herein in the DetailedDescription. This Summary is not intended to identify key factors oressential features of the claimed subject matter, nor is it intended tobe used to limit the scope of the claimed subject matter.

In one illustrative embodiment, a method, in a data processing systemcomprising at least one processor and at least one memory, the at leastone memory comprising instructions executed by the at least oneprocessor to cause the at least one processor to implement apersonalized training recommendation system. The method comprisesreceiving, by the personalized training recommendation system, a requestfrom a user to generate a personalized training regimen for a specifiedathletic event and identifying, by the personalized trainingrecommendation system, event information comprising characteristics ofone or more geographical segments of the specified athletic event. Themethod also comprises identifying, by the personalized trainingrecommendation system based on the event information, from a knowledgebase, one or more portions of a geographical region that approximate oneor more characteristics of the one or more geographical segmentsassociated with the specified athletic event within a predeterminedtolerance. Moreover, the method comprises generating, by thepersonalized training recommendation system, a training course at leastby combining a selected set of the portions of the geographical regionbased on an evaluation of a level of matching, for each portion, ofcharacteristics of the portion to the one or more physicalcharacteristics associated with the one or more geographical segments ofthe specified athletic event. In addition, the method comprisespresenting, by the personalized training recommendation system, thegenerated training course to the user as the personalized trainingregimen for use by the user in preparing for the specified athleticevent.

In other illustrative embodiments, a computer program product comprisinga computer useable or readable medium having a computer readable programis provided. The computer readable program, when executed on a computingdevice, causes the computing device to perform various ones of, andcombinations of, the operations outlined above with regard to the methodillustrative embodiment.

In yet another illustrative embodiment, a system/apparatus is provided.The system/apparatus may comprise one or more processors and a memorycoupled to the one or more processors. The memory may compriseinstructions which, when executed by the one or more processors, causethe one or more processors to perform various ones of, and combinationsof, the operations outlined above with regard to the method illustrativeembodiment.

These and other features and advantages of the present invention will bedescribed in, or will become apparent to those of ordinary skill in theart in view of, the following detailed description of the exampleembodiments of the present invention.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

The invention, as well as a preferred mode of use and further objectivesand advantages thereof, will best be understood by reference to thefollowing detailed description of illustrative embodiments when read inconjunction with the accompanying drawings, wherein:

FIG. 1 depicts a schematic diagram of one illustrative embodiment of acognitive system in a computer network;

FIG. 2 is a block diagram of an example data processing system in whichaspects of the illustrative embodiments are implemented;

FIGS. 3A-3C depict an example scenario in which a user wishes to trainfor a specified planned course using the mechanisms of the illustrativeembodiments; and

FIG. 4 is a flowchart outlining an example operation of a personalizedtraining recommendation engine in accordance with one illustrativeembodiment.

DETAILED DESCRIPTION

The illustrative embodiments provide mechanisms for personalizingtraining based on a planned course or athletic event and individualpersonal assessments of strengths and weaknesses relative to thephysical requirements of the planned course or athletic event. Themechanisms of the illustrative embodiments focus on the particularcourse or athletic event that an individual wishes to train for, and theindividual's capabilities and weaknesses with regard to that athleticevent. Based on this information, the mechanisms of the illustrativeembodiments determine areas where the individual needs to focus trainingto increase their capabilities with regard to the demands of theathletic event. In addition, the mechanisms of the illustrativeembodiments find real world physical locations within a given proximityof the individual where the physical locations provide similar physicalfeatures to that of the course or athletic event and that willstrengthen the individuals' capabilities with regard to areas where theindividual needs to focus training.

The illustrative embodiments utilize a cognitive computing system toanalyze the physical features and other characteristics of the course orathletic event, e.g., weather conditions, timing of the athletic event,surface type, length, hill density and elevations or grades, altitudes,etc. and correlates those physical features and characteristics withsimilar characteristics of geographical areas near the individual thatis being trained for the athletic event, or otherwise within ageographic region specified by the individual. Portions of geographicalareas that are similar in characteristics may be selected to generate atraining course for the training of the individual for the athleticevent. The individual's performance on the training course may bemonitored and areas of weakness or insufficient performance may beidentified. A training regimen for strengthening the areas of weaknessor insufficient performance may then be generated. In addition, theprocess may be repeated to identify portions of geographical areas thathave characteristics that will assist the individual in addressing theareas of weakness or insufficient performance so that a modifiedtraining course may be generated.

The athletic event may be any athletic event in which an individual maybe required to expend physical efforts to accomplish completion of theathletic event and for which physical training is to be performed.Examples of such athletic events may include, for example, marathons,triathlon, bicycle races, crewing competitions, sailing competitions,various running races, or any other athletic event requiring physicaltraining of the individual. For purposes of the following description abicycling race will be used as an exemplar for illustrating theoperation of the mechanisms of the illustrative embodiments.

With the mechanisms of the illustrative embodiments, assume that anindividual, or user, is preparing for a bicycling race, such as the Tourde France, Giro d'Italia, Vuelta a Espana, or the like, that is at aspecific location, on a specific date, with a specific course and whichhas been participated in by others previously. A cognitive systemingests data regarding the course, e.g., the terrain, the environmentalcharacteristics (elevation, standard humidity, air quality,temperatures, light levels, roughness of the course, curvature of thecourse surface (which may be especially important in running races,etc.), and the like, to thereby characterize the course with regard to aplurality of different geographical and environmental conditioncharacteristics. The cognitive system further ingests similar dataregarding a geographical area designated by the user and/or associatedwith a user's geographic location. For example, a user selectable rangevalue may indicate a geographical range about a user's home geographicallocation for which data is to be ingested by the cognitive system.

For example, assume the user is located in the United States of Americabut wants train for the Tour de France and wants to emulate theconditions of the Tour de France as part of the user's training. Theuser may designate a geographical region which the user is willing toconsider for identification of training courses to assist the user inemulating the conditions of the Tour de France in the United States ofAmerica. This geographical region may be specified with regard to arange or proximity to the user's home location, e.g., 100 mile radiusaround a user's home location or may be a separate geographical regionindicating areas where the user is willing to travel in order to performtheir training. The cognitive system analyzes the geographical andenvironment condition information for the athletic event or course, i.e.Tour de France in this example, and analyzes the geographical andenvironment condition information for the user specified geographicregion to identify geographical areas within the geographical regionthat have similar geographical and/or environmental conditions to thatof the athletic event.

In addition, the cognitive system ingests personal data about the userincluding data regarding the user's previous performance on similartypes of courses or in similar athletic events (e.g., other bicycleraces, bicycling events, or the like in the above example, demographicinformation (e.g., age, gender, etc. which may be used to compare theuser with other users of similar demographics for purposes ofidentifying desired performance levels, areas where similar users haddifficulty on a course, or the like), as well as health informationincluding physical attributes, measurements of fitness and physicalcapabilities, and the like. This personal data about the user may alsoinclude health information obtained from sensors associated with theuser, such as wearable sensors, e.g., FitBit, instrumented clothing,heart rate monitors, biometric processing units and sensors, or otherwearable activity/health sensor. This personal health information mayinclude such information as previous measurements of the user withregard to fitness and strain level during performance of physicalactivities. For example, sports medicine facilities, hospitals, doctorsoffices, and the like, may make use of various types of medicalequipment to measure various aspects of the user's personal health andrecord that information into data structures in medical computingsystems. This data may be provided as part of a corpus of informationthat is ingested by the cognitive system along with other data from thewearable activity/health sensors, data entered manually by a healthprovider or the user, or the like. Any source of personal healthinformation about the user may be included as a source of data providedin a corpus of information.

The cognitive system also ingests data regarding medical and/or athleticdomains as resource information that may be utilized to performcognitive operations as described hereafter. For example, the cognitivesystem ingests data from physical therapy and sports medicine journalsthat comprise content recommending methods for improving humancapabilities, such as improving frailty or weakness in various physicalperformance areas. The resource information may further compriseinformation from other medical and/or athletic sources including theAmerican medical association (AMA), the American Medical Society forSports Medicine (AMSSM), National Athletic Trainer's Association (NATA),various physician's desk reference texts, medication texts, and/or anyother source of information that may be pertinent to the physicaltraining of a user for a particular athletic event or course.

The user may submit a query to the cognitive system to find a trainingcourse which emulates, as close as possible, the race course, or otherathletic event, in terms of length, geographical characteristics, andenvironment characteristics, e.g., elevation, proximity of hillsrelative to one another, number of hills per unit mile (i.e. hilldensity), types of road or course path conditions, weather, lightinglevels, temperature, etc. The cognitive system selects portions of thegeographical area in the geographical region specified by the user,e.g., within 100 miles of the user's home location, that provide similarcharacteristics to those of portions of the race course or athleticevent, if possible. The portions of the geographical area in thegeographical region need not be contiguous, however contiguous portions,or portions that are relatively closer to one another than others, maybe preferred over others. The identified portions are output to the useras a suggested training course for the identified athletic event or racecourse for which training is to be performed. In outputting theseidentified portions, the portions may be connected to one another, suchas by including intervening portions of the geographical area thatconnect the identified portions, to generate a contiguous trainingcourse if desired, however in doing so some portions of the trainingcourse may not match the conditions of the athletic event or race coursefor which training is to be performed.

The user then performs training on the identified real world physicaltraining course that emulates the race course or athletic event, whilewearing health and/or activity monitoring equipment that is capable ofproviding data to the cognitive system regarding the user's performancewhile training on the training course. The user's performance data whiletraining on the identified training course may be correlated, such asvia global positioning system (GPS) capabilities, cellulartriangulation, or other location determining capabilities of electronicequipment, with portions of the training course to correlate the user'sperformance with regard to particular characteristics of the trainingcourse. In addition to the wearable health and/or activity monitoringequipment data, the cognitive system may obtain data regarding theuser's performance during training on the training course from medicalpersonnel, the user himself/herself, or the like, such as through manualentry of such information, responses to a questionnaire presented aftertraining, evaluation of the user via medical equipment after training onthe training course, or any other methodology for obtaining dataregarding the user's performance and/or health condition after training.

For example, through the operation of the cognitive system, portions ofa geographic area with 50 miles of the user's home location may beidentified in which a subset of the geographical and/or environmentalcharacteristics of the athletic event, e.g., the Tour de France, areclosely matched using a fuzzy matching approach. These portions may besimilar in elevation, humidity levels, temperature, frequency of hills,course terrain type, etc., where “similarity” may be determined as amatch within a given acceptable tolerance value of the actual valuesassociated with the race course or athletic event for which training isbeing performed. The portions of the geographical area may be piecedtogether by including intervening portions of the geographical area suchthat a contiguous training course is generated. The user may then trainon that training course, such as by bicycling on the training course,for example, while wearing health and/or activity monitoring equipmentthat is able to record and/or transmit data representing the healthand/or activity of the user while training on the training course. Theuser may also be treated after training by a medical professional,sports trainer, or other professional with the use of medical equipmentto determine the health status of the user after training. Furthermore,the user and/or medical professional may manually enter informationindicating aspects of the user's training on the training course and/orhealth. All of this performance and/or health data may be provided aspart of a corpus of information ingested by the cognitive system.

Thus, for example, the wearable sensor information may indicate theuser's heart rate at various points during the training course, thepedaling rate or speed of the bicycle at various points during thetraining course, the user's blood pressure, breathing rate, and thelike, during various points of the training course. This information maybe correlated with the locations along the training course where theparticular performance and/or health data was obtained by the wearablesensors. The information gathered after training may also be utilized asa more general performance and/or health data for the training course asa whole.

The performance and/or health data obtained is analyzed by the cognitivesystem to correlate observed stress/strain and/or low performance orweaknesses with types of motions used at various portions of thetraining course. These types of motions may then be used to identifyexercises or training regimens that the user may implement to strengthenthe user's capabilities in these areas of weakness or insufficiency inperformance with regard to specific elements of the training course inquestion and thus, the ultimate course or athletic event. These trainingregimens or exercises may comprise both training regimens and exerciseswith regard to the real world physical training course, exercises and/ortraining activities performed in a gym or with more stationary gymequipment, exercises and/or training activities the user can perform offthe training course and outside of a gym environment, and/or the like.

In some cases, a new analysis of the geographical area in thegeographical region specified by the user may be performed to identifyportions of the geographical area that have characteristics that willassist the user in strengthening the areas of weakness or insufficiencyin performance. For example, if it is determined that the user seems tohave difficulty on hilly terrain and needs to increase the lungcapacity, endurance, and/or strength with regard to hilly terrain, thenthe training course may be modified to emphasize hilly areas that willassist the user in building up the user's performance with regard tohilly areas. Moreover, the geographical region may be analyzed toidentify other portions of geographical areas that may not have beenpreviously present in the training course, to thereby add those portionsto the training course to emphasize hilly areas as part of the trainingcourse. These additions may also replace other portions in the trainingcourse for which the user has shown sufficient performance. Thus, amodified training course may be generated in addition to, or inreplacement of, the training regimens and/or exercises mentioned above.

It should be appreciated that the evaluation of weaknesses as well ashow to strengthen those areas as well as increase performance may makeuse of the ingested data regarding sports medicine and the like.Moreover, it should be appreciated that in some illustrativeembodiments, analysis of data associated with other users that haveovercome the identified areas of weakness or performance insufficiencymay be performed by the cognitive system to determine the trainingregimen and/or types of courses or characteristics of portions ofgeographical areas that were used to assist those users in overcomingsuch weakness or performance insufficiency. This information may be usedalong with other reference information to determine the optimum trainingregimen and/or portions of geographical areas that will assist thepresent user in strengthening the areas of weakness and improveperformance.

Thus, the present illustrative embodiments provide mechanism thatfocuses a user's training on areas of weakness or insufficientperformance that are specific to the particular race course or athleticevent that the user is training for. Moreover, the training iscustomized to the particular user and the particular race course orathletic event such that a training course, training regimen, and/or setof exercises are focused on assisting the user in strengthening areas ofweakness and/or insufficient performance of the particular user withregard to the particular demands of the race course or athletic eventthat the user is training for.

Before beginning the discussion of the various aspects of theillustrative embodiments in more detail, it should first be appreciatedthat throughout this description the term “mechanism” will be used torefer to elements of the present invention that perform variousoperations, functions, and the like. A “mechanism,” as the term is usedherein, may be an implementation of the functions or aspects of theillustrative embodiments in the form of an apparatus, a procedure, or acomputer program product. In the case of a procedure, the procedure isimplemented by one or more devices, apparatus, computers, dataprocessing systems, or the like. In the case of a computer programproduct, the logic represented by computer code or instructions embodiedin or on the computer program product is executed by one or morehardware devices in order to implement the functionality or perform theoperations associated with the specific “mechanism.” Thus, themechanisms described herein may be implemented as specialized hardware,software executing on general purpose hardware, software instructionsstored on a medium such that the instructions are readily executable byspecialized or general purpose hardware, a procedure or method forexecuting the functions, or a combination of any of the above.

The present description and claims may make use of the terms “a”, “atleast one of”, and “one or more of” with regard to particular featuresand elements of the illustrative embodiments. It should be appreciatedthat these terms and phrases are intended to state that there is atleast one of the particular feature or element present in the particularillustrative embodiment, but that more than one can also be present.That is, these terms/phrases are not intended to limit the descriptionor claims to a single feature/element being present or require that aplurality of such features/elements be present. To the contrary, theseterms/phrases only require at least a single feature/element with thepossibility of a plurality of such features/elements being within thescope of the description and claims.

Moreover, it should be appreciated that the use of the term “engine,” ifused herein with regard to describing embodiments and features of theinvention, is not intended to be limiting of any particularimplementation for accomplishing and/or performing the actions, steps,processes, etc., attributable to and/or performed by the engine. Anengine may be, but is not limited to, software, hardware and/or firmwareor any combination thereof that performs the specified functionsincluding, but not limited to, any use of a general and/or specializedprocessor in combination with appropriate software loaded or stored in amachine readable memory and executed by the processor. Further, any nameassociated with a particular engine is, unless otherwise specified, forpurposes of convenience of reference and not intended to be limiting toa specific implementation. Additionally, any functionality attributed toan engine may be equally performed by multiple engines, incorporatedinto and/or combined with the functionality of another engine of thesame or different type, or distributed across one or more engines ofvarious configurations.

In addition, it should be appreciated that the following descriptionuses a plurality of various examples for various elements of theillustrative embodiments to further illustrate example implementationsof the illustrative embodiments and to aid in the understanding of themechanisms of the illustrative embodiments. These examples intended tobe non-limiting and are not exhaustive of the various possibilities forimplementing the mechanisms of the illustrative embodiments. It will beapparent to those of ordinary skill in the art in view of the presentdescription that there are many other alternative implementations forthese various elements that may be utilized in addition to, or inreplacement of, the examples provided herein without departing from thespirit and scope of the present invention.

The present invention may be a system, a method, and/or a computerprogram product. The computer program product may include a computerreadable storage medium (or media) having computer readable programinstructions thereon for causing a processor to carry out aspects of thepresent invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Java, Smalltalk, C++ or the like,and conventional procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions may execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer may be connected to the user's computer through anytype of network, including a local area network (LAN) or a wide areanetwork (WAN), or the connection may be made to an external computer(for example, through the Internet using an Internet Service Provider).In some embodiments, electronic circuitry including, for example,programmable logic circuitry, field-programmable gate arrays (FPGA), orprogrammable logic arrays (PLA) may execute the computer readableprogram instructions by utilizing state information of the computerreadable program instructions to personalize the electronic circuitry,in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the block may occur out of theorder noted in the figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

As noted above, the present invention provides mechanisms forpersonalizing training based on a planned course or athletic event andindividual personal assessments of strengths and weaknesses relative tothe physical requirements of the planned course or athletic event. Theillustrative embodiments utilize cognitive systems which employ one ormore specially configured computing devices and/or data processingsystems to perform various operations for ingesting information,analyzing that information, and performing cognitive operations based onthe ingestion and analysis. These operations are not routine operationsperformed by a computing device, but require higher levels offunctionality which involve implementation of specialized hardwareand/or software that implement a type of artificial intelligence withregard to the ingested information.

It should be appreciated that, with the illustrative embodiments beingspecifically directed to computer based mechanisms for improving thephysical training of athletes and/or other users with regard to aparticular race course or athletic event, the illustrative embodimentsmay be utilized in many different types of data processing environments.In order to provide a context for the description of the specificelements and functionality of the illustrative embodiments, FIGS. 1-3are provided hereafter as example environments in which aspects of theillustrative embodiments may be implemented. It should be appreciatedthat FIGS. 1-3 are only examples and are not intended to assert or implyany limitation with regard to the environments in which aspects orembodiments of the present invention may be implemented. Manymodifications to the depicted environments may be made without departingfrom the spirit and scope of the present invention.

FIGS. 1-3 are directed to describing an example cognitive system forproviding personalized physical training based on a planned courseand/or athletic activity and an individual assessment of the user beingtrained. The cognitive system, in some illustrative embodiments, asshown in FIGS. 1-3, implements a request processing pipeline, such as aQuestion Answering (QA) pipeline (also referred to as a Question/Answerpipeline or Question and Answer pipeline) for example, requestprocessing methodology, and request processing computer program productwith which the mechanisms of the illustrative embodiments areimplemented. These requests may be provided as structure or unstructuredrequest messages, natural language questions, or any other suitableformat for requesting an operation to be performed by the cognitivesystem. As described in more detail hereafter, the particularapplication that is implemented in the cognitive system of the presentinvention is an application for identifying a physical geographicalarea, or portions thereof, that match (within a given tolerance) thegeographic and environmental characteristics of a planned course orathletic event such that a user may perform physical training on atraining course generated by the concatenation or other combination ofthe portions of the physical geographical area. The cognitive systemfurther provides mechanisms for analyzing a user's performance duringtraining on the generated training course and, based on results of thisanalysis, determine a training regime, exercises, and even modify thetraining course to focus on areas of weakness or insufficientperformance so as to strengthen the user in these areas.

It should be appreciated that the cognitive system, while shown ashaving a single request processing pipeline in the examples hereafter,may in fact have multiple request processing pipelines. Each requestprocessing pipeline may be separately trained and/or configured toprocess requests associated with different domains or be configured toperform the same or different analysis on input requests (or questionsin implementations using a QA pipeline), depending on the desiredimplementation. For example, in some cases, a first request processingpipeline may be trained to operate on input requests directed toidentifying a matching geographical area for generating a trainingcourse while a second request processing pipeline may be directed toevaluating the user's performance, health metrics, and the like, so asto generate a training regime, exercise recommendation, or even modify atraining course based on areas of identified weakness or insufficientperformance.

Moreover, each request processing pipeline may have their own associatedcorpus or corpora that they ingest and operate on, e.g., one corpus formedical and/or athletic training resource documents, another corpus forgeographical and/or environmental information for various geographicareas as well as for known courses and athletic events, and anothercorpus for user health and athletic performance information. In somecases, the request processing pipelines may each operate on the samedomain of input questions but may have different configurations, e.g.,different annotators or differently trained annotators, such thatdifferent analysis and potential answers are generated. The cognitivesystem may provide additional logic for routing input questions to theappropriate request processing pipeline, such as based on a determineddomain of the input request, combining and evaluating final resultsgenerated by the processing performed by multiple request processingpipelines, and other control and interaction logic that facilitates theutilization of multiple request processing pipelines.

As noted above, one type of request processing pipeline with which themechanisms of the illustrative embodiments may be utilized is a QuestionAnswering (QA) pipeline. The description of example embodiments of thepresent invention hereafter will utilize a QA pipeline as an example ofa request processing pipeline that may be augmented to includemechanisms in accordance with one or more illustrative embodiments. Itshould be appreciated that while the present invention will be describedin the context of the cognitive system implementing one or more QApipelines that operate on an input question, the illustrativeembodiments are not limited to such. Rather, the mechanisms of theillustrative embodiments may operate on requests that are not posed as“questions” but are formatted as requests for the cognitive system toperform cognitive operations on a specified set of input data using theassociated corpus or corpora and the specific configuration informationused to configure the cognitive system. For example, rather than askinga natural language question of “Where should I train for the Tour deFrance?”, the cognitive system may instead receive a request of“generate a training course for the Tour de France,” or the like. Itshould be appreciated that the mechanisms of the QA system pipeline mayoperate on requests in a similar manner to that of input naturallanguage questions with minor modifications. In fact, in some cases, arequest may be converted to a natural language question for processingby the QA system pipelines if desired for the particular implementation.

As will be discussed in greater detail hereafter, the illustrativeembodiments may be integrated in, augment, and extend the functionalityof these QA pipeline, or request processing pipeline, mechanisms of acognitive system with regard to obtaining geographic and/orenvironmental characteristic information for a planned course orathletic event, geographic and/or environmental characteristicinformation for a user specified geographic region, identify geographicareas, or portions thereof, in the user specified geographic region thatmatch (within a tolerance) the characteristics of the planned course orathletic event, and generate a training course for the user thatindicates a real world physical geographical course the user can trainon that has portions of the training course that represent the actualplanned course or athletic event that the user wishes to train for.Moreover, the illustrative embodiments augment and extend thefunctionality of the cognitive system to evaluate a user's actualperformance while training on the generated training course, as well asother health information gathered from the user, health data sources,treating medical professionals, and the like, to generate trainingregimens, exercises, and/or modify the training course to help the userimprove in areas where weakness or insufficient performance isidentified.

In view of the above, it is important to first have an understanding ofhow cognitive systems and question and answer creation in a cognitivesystem implementing a QA pipeline is implemented before describing howthe mechanisms of the illustrative embodiments are integrated in andaugment such cognitive systems and request processing pipeline, or QApipeline, mechanisms. It should be appreciated that the mechanismsdescribed in FIGS. 1-3 are only examples and are not intended to stateor imply any limitation with regard to the type of cognitive systemmechanisms with which the illustrative embodiments are implemented. Manymodifications to the example cognitive system shown in FIGS. 1-3 may beimplemented in various embodiments of the present invention withoutdeparting from the spirit and scope of the present invention.

As an overview, a cognitive system is a specialized computer system, orset of computer systems, configured with hardware and/or software logic(in combination with hardware logic upon which the software executes) toemulate human cognitive functions. These cognitive systems applyhuman-like characteristics to conveying and manipulating ideas which,when combined with the inherent strengths of digital computing, cansolve problems with high accuracy and resilience on a large scale. Acognitive system performs one or more computer-implemented cognitiveoperations that approximate a human thought process as well as enablepeople and machines to interact in a more natural manner so as to extendand magnify human expertise and cognition. A cognitive system comprisesartificial intelligence logic, such as natural language processing (NLP)based logic, for example, and machine learning logic, which may beprovided as specialized hardware, software executed on hardware, or anycombination of specialized hardware and software executed on hardware.The logic of the cognitive system implements the cognitive operation(s),examples of which include, but are not limited to, question answering,identification of related concepts within different portions of contentin a corpus, intelligent search algorithms, such as Internet web pagesearches, for example, medical diagnostic and treatment recommendations,and other types of recommendation generation, e.g., items of interest toa particular user, potential new contact recommendations, or the like.

IBM Watson™ is an example of one such cognitive system which can processhuman readable language and identify inferences between text passageswith human-like high accuracy at speeds far faster than human beings andon a larger scale. In general, such cognitive systems are able toperform the following functions:

-   -   Navigate the complexities of human language and understanding    -   Ingest and process vast amounts of structured and unstructured        data    -   Generate and evaluate hypothesis    -   Weigh and evaluate responses that are based only on relevant        evidence    -   Provide situation-specific advice, insights, and guidance    -   Improve knowledge and learn with each iteration and interaction        through machine learning processes    -   Enable decision making at the point of impact (contextual        guidance)    -   Scale in proportion to the task    -   Extend and magnify human expertise and cognition    -   Identify resonating, human-like attributes and traits from        natural language    -   Deduce various language specific or agnostic attributes from        natural language    -   High degree of relevant recollection from data points (images,        text, voice) (memorization and recall)    -   Predict and sense with situational awareness that mimic human        cognition based on experiences    -   Answer questions based on natural language and specific evidence

In one aspect, cognitive systems provide mechanisms for answeringquestions posed to these cognitive systems using a Question Answeringpipeline or system (QA system) and/or process requests which may or maynot be posed as natural language questions. The QA pipeline or system isan artificial intelligence application executing on data processinghardware that answers questions pertaining to a given subject-matterdomain presented in natural language. The QA pipeline receives inputsfrom various sources including input over a network, a corpus ofelectronic documents or other data, data from a content creator,information from one or more content users, and other such inputs fromother possible sources of input. Data storage devices store the corpusof data. A content creator creates content in a document for use as partof a corpus of data with the QA pipeline. The document may include anyfile, text, article, or source of data for use in the QA system. Forexample, a QA pipeline accesses a body of knowledge about the domain, orsubject matter area, e.g., financial domain, medical domain, legaldomain, etc., where the body of knowledge (knowledgebase) can beorganized in a variety of configurations, e.g., a structured repositoryof domain-specific information, such as ontologies, or unstructured datarelated to the domain, or a collection of natural language documentsabout the domain.

Content users input questions to cognitive system which implements theQA pipeline. The QA pipeline then answers the input questions using thecontent in the corpus of data by evaluating documents, sections ofdocuments, portions of data in the corpus, or the like. When a processevaluates a given section of a document for semantic content, theprocess can use a variety of conventions to query such document from theQA pipeline, e.g., sending the query to the QA pipeline as a well-formedquestion which is then interpreted by the QA pipeline and a response isprovided containing one or more answers to the question. Semanticcontent is content based on the relation between signifiers, such aswords, phrases, signs, and symbols, and what they stand for, theirdenotation, or connotation. In other words, semantic content is contentthat interprets an expression, such as by using Natural LanguageProcessing.

As will be described in greater detail hereafter, the QA pipelinereceives an input question, parses the question to extract the majorfeatures of the question, uses the extracted features to formulatequeries, and then applies those queries to the corpus of data. Based onthe application of the queries to the corpus of data, the QA pipelinegenerates a set of hypotheses, or candidate answers to the inputquestion, by looking across the corpus of data for portions of thecorpus of data that have some potential for containing a valuableresponse to the input question. The QA pipeline then performs deepanalysis on the language of the input question and the language used ineach of the portions of the corpus of data found during the applicationof the queries using a variety of reasoning algorithms. There may behundreds or even thousands of reasoning algorithms applied, each ofwhich performs different analysis, e.g., comparisons, natural languageanalysis, lexical analysis, or the like, and generates a score. Forexample, some reasoning algorithms may look at the matching of terms andsynonyms within the language of the input question and the foundportions of the corpus of data. Other reasoning algorithms may look attemporal or spatial features in the language, while others may evaluatethe source of the portion of the corpus of data and evaluate itsveracity.

The scores obtained from the various reasoning algorithms indicate theextent to which the potential response is inferred by the input questionbased on the specific area of focus of that reasoning algorithm. Eachresulting score is then weighted against a statistical model. Thestatistical model captures how well the reasoning algorithm performed atestablishing the inference between two similar passages for a particulardomain during the training period of the QA pipeline. The statisticalmodel is used to summarize a level of confidence that the QA pipelinehas regarding the evidence that the potential response, i.e. candidateanswer, is inferred by the question. This process is repeated for eachof the candidate answers until the QA pipeline identifies candidateanswers that surface as being significantly stronger than others andthus, generates a final answer, or ranked set of answers, for the inputquestion.

As mentioned above, QA pipeline mechanisms operate by accessinginformation from a corpus of data or information (also referred to as acorpus of content), analyzing it, and then generating answer resultsbased on the analysis of this data. Accessing information from a corpusof data typically includes: a database query that answers questionsabout what is in a collection of structured records, and a search thatdelivers a collection of document links in response to a query against acollection of unstructured data (text, markup language, etc.).Conventional question answering systems are capable of generatinganswers based on the corpus of data and the input question, verifyinganswers to a collection of questions for the corpus of data, correctingerrors in digital text using a corpus of data, and selecting answers toquestions from a pool of potential answers, i.e. candidate answers.

Content creators, such as article authors, electronic document creators,web page authors, document database creators, and the like, determineuse cases for products, solutions, and services described in suchcontent before writing their content. Consequently, the content creatorsknow what questions the content is intended to answer in a particulartopic addressed by the content. Categorizing the questions, such as interms of roles, type of information, tasks, or the like, associated withthe question, in each document of a corpus of data allows the QApipeline to more quickly and efficiently identify documents containingcontent related to a specific query. The content may also answer otherquestions that the content creator did not contemplate that may beuseful to content users. The questions and answers may be verified bythe content creator to be contained in the content for a given document.These capabilities contribute to improved accuracy, system performance,machine learning, and confidence of the QA pipeline. Content creators,automated tools, or the like, annotate or otherwise generate metadatafor providing information useable by the QA pipeline to identify thesequestion and answer attributes of the content.

Operating on such content, the QA pipeline generates answers for inputquestions using a plurality of intensive analysis mechanisms whichevaluate the content to identify the most probable answers, i.e.candidate answers, for the input question. The most probable answers areoutput as a ranked listing of candidate answers ranked according totheir relative scores or confidence measures calculated duringevaluation of the candidate answers, as a single final answer having ahighest ranking score or confidence measure, or which is a best match tothe input question, or a combination of ranked listing and final answer.

FIG. 1 depicts a schematic diagram of one illustrative embodiment of acognitive system 100 implementing a request processing pipeline 108,which in some embodiments may be a question answering (QA) pipeline, ina computer network 102. For purposes of the present description, it willbe assumed that the request processing pipeline 108 is implemented as aQA pipeline that operates on structured and/or unstructured requests inthe form of input questions. One example of a question processingoperation which may be used in conjunction with the principles describedherein is described in U.S. Patent Application Publication No.2011/0125734, which is herein incorporated by reference in its entirety.The cognitive system 100 is implemented on one or more computing devices104A-D (comprising one or more processors and one or more memories, andpotentially any other computing device elements generally known in theart including buses, storage devices, communication interfaces, and thelike) connected to the computer network 102. For purposes ofillustration only, FIG. 1 depicts the cognitive system 100 beingimplemented on computing device 104A only, but as noted above thecognitive system 100 may be distributed across multiple computingdevices, such as a plurality of computing devices 104A-D. The network102 includes multiple computing devices 104A-D, which may operate asserver computing devices, and 110-112 which may operate as clientcomputing devices, in communication with each other and with otherdevices or components via one or more wired and/or wireless datacommunication links, where each communication link comprises one or moreof wires, routers, switches, transmitters, receivers, or the like. Insome illustrative embodiments, the cognitive system 100 and network 102enables question processing and answer generation (QA) functionality forone or more cognitive system users via their respective computingdevices 110-112. In other embodiments, the cognitive system 100 andnetwork 102 may provide other types of cognitive operations including,but not limited to, request processing and cognitive response generationwhich may take many different forms depending upon the desiredimplementation, e.g., cognitive information retrieval,training/instruction of users, cognitive evaluation of data, or thelike. Other embodiments of the cognitive system 100 may be used withcomponents, systems, sub-systems, and/or devices other than those thatare depicted herein.

The cognitive system 100 is configured to implement a request processingpipeline 108 that receive inputs from various sources. The requests maybe posed in the form of a natural language question, natural languagerequest for information, natural language request for the performance ofa cognitive operation, or the like. For example, the cognitive system100 receives input from the network 102, a corpus or corpora ofelectronic documents 106, cognitive system users, and/or other data andother possible sources of input. In one embodiment, some or all of theinputs to the cognitive system 100 are routed through the network 102.The various computing devices 104A-D on the network 102 include accesspoints for content creators and cognitive system users. Some of thecomputing devices 104A-D include devices for a database storing thecorpus or corpora of data 106 (which is shown as a separate entity inFIG. 1 for illustrative purposes only). Portions of the corpus orcorpora of data 106 may also be provided on one or more other networkattached storage devices, in one or more databases, or other computingdevices not explicitly shown in FIG. 1. The network 102 includes localnetwork connections and remote connections in various embodiments, suchthat the cognitive system 100 may operate in environments of any size,including local and global, e.g., the Internet.

In one embodiment, the content creator creates content in a document ofthe corpus or corpora of data 106 for use as part of a corpus of datawith the cognitive system 100. The document includes any file, text,article, or source of data for use in the cognitive system 100.Cognitive system users access the cognitive system 100 via a networkconnection or an Internet connection to the network 102, and inputquestions/requests to the cognitive system 100 that areanswered/processed based on the content in the corpus or corpora of data106. In one embodiment, the questions/requests are formed using naturallanguage. The cognitive system 100 parses and interprets thequestion/request via a pipeline 108, and provides a response to thecognitive system user, e.g., cognitive system user 110, containing oneor more answers to the question posed, response to the request, resultsof processing the request, or the like. In some embodiments, thecognitive system 100 provides a response to users in a ranked list ofcandidate answers/responses while in other illustrative embodiments, thecognitive system 100 provides a single final answer/response or acombination of a final answer/response and ranked listing of othercandidate answers/responses.

The cognitive system 100 implements the pipeline 108 which comprises aplurality of stages for processing an input question/request based oninformation obtained from the corpus or corpora of data 106. Thepipeline 108 generates answers/responses for the input question orrequest based on the processing of the input question/request and thecorpus or corpora of data 106. The pipeline 108 will be described ingreater detail hereafter with regard to FIG. 3.

In some illustrative embodiments, the cognitive system 100 may be theIBM Watson™ cognitive system available from International BusinessMachines Corporation of Armonk, N.Y., which is augmented with themechanisms of the illustrative embodiments described hereafter. Asoutlined previously, a pipeline of the IBM Watson™ cognitive systemreceives an input question or request which it then parses to extractthe major features of the question/request, which in turn are then usedto formulate queries that are applied to the corpus or corpora of data106. Based on the application of the queries to the corpus or corpora ofdata 106, a set of hypotheses, or candidate answers/responses to theinput question/request, are generated by looking across the corpus orcorpora of data 106 for portions of the corpus or corpora of data 106(hereafter referred to simply as the corpus 106) that have somepotential for containing a valuable response to the inputquestion/response (hereafter assumed to be an input question). Thepipeline 108 of the IBM Watson™ cognitive system then performs deepanalysis on the language of the input question and the language used ineach of the portions of the corpus 106 found during the application ofthe queries using a variety of reasoning algorithms.

The scores obtained from the various reasoning algorithms are thenweighted against a statistical model that summarizes a level ofconfidence that the pipeline 108 of the IBM Watson™ cognitive system100, in this example, has regarding the evidence that the potentialcandidate answer is inferred by the question. This process is berepeated for each of the candidate answers to generate ranked listing ofcandidate answers which may then be presented to the user that submittedthe input question, e.g., a user of client computing device 110, or fromwhich a final answer is selected and presented to the user. Moreinformation about the pipeline 108 of the IBM Watson™ cognitive system100 may be obtained, for example, from the IBM Corporation website, IBMRedbooks, and the like. For example, information about the pipeline ofthe IBM Watson™ cognitive system can be found in Yuan et al., “Watsonand Healthcare,” IBM developerWorks, 2011 and “The Era of CognitiveSystems: An Inside Look at IBM Watson and How it Works” by Rob High, IBMRedbooks, 2012.

As noted above, while the input to the cognitive system 100 from aclient device may be posed in the form of a natural language question,the illustrative embodiments are not limited to such. Rather, the inputquestion may in fact be formatted or structured as any suitable type ofrequest which may be parsed and analyzed using structured and/orunstructured input analysis, including but not limited to the naturallanguage parsing and analysis mechanisms of a cognitive system such asIBM Watson™, to determine the basis upon which to perform cognitiveanalysis and providing a result of the cognitive analysis. In the caseof personalized training of a user for a designated planned course orathletic event, this analysis may involve processing geographical and/orenvironmental information from various sources as provided in a corpusof documentation or information, to identify matching portions ofgeographical and/or environmental information in geographic areas withina user designated geographic region. Moreover, this analysis by thecognitive system may involve analyzing a user's health records, healthand/or performance metrics as obtained from wearable sensors, analysisof medical and/or athletic training resource documentation, and thelike, to identify areas of weakness or insufficient performance,training regimens and exercises to perform to strengthen the user inareas of weakness or insufficient performance, and/or modify a trainingcourse to focus on these areas of weakness or insufficient performance.

As shown in FIG. 1, the cognitive system 100 is further augmented, inaccordance with the mechanisms of the illustrative embodiments, toinclude logic implemented in specialized hardware, software executed onhardware, or any combination of specialized hardware and softwareexecuted on hardware, for implementing a personalized trainingrecommendation engine 120. The personalized training recommendationengine 120 provides personalized training based on a planned course orathletic event and individual personal assessments of strengths andweaknesses relative to the physical requirements of the planned courseor athletic event. The personalized training recommendation engine 120,while shown as a separate entity in FIG. 1 for illustration purposes,may in fact be integrated into the logic of the cognitive system 100and/or request processing pipeline 108.

As shown in FIG. 1, the personalized training recommendation engine 120comprises a planned course evaluation module 122, a geographic areaevaluation module 124, a user performance evaluation module 126, and apersonalized training module 128. It should be appreciated that thepersonalized training recommendation engine 120 may comprise othermodules and/or logic not specifically shown in FIG. 1 which performoperations to facilitate or otherwise support the operations associatedwith the modules 122-128. For example, control logic may be provided inthe personalized training recommendation engine 120 which performsfunctions to orchestrate the interaction of operations by the variousmodules 122-128. Moreover, communication interface logic may be providedto facilitate communication to/from the personalized trainingrecommendation engine 120.

The cognitive system 100 may receive a request from a user, such as fromclient computing device 110, to generate a training course for the userfor a specified planned course or athletic event. It should beappreciated that in the illustrative embodiment described herein, theplanned course or athletic event is one that is well known and for whichthe geographical location and environmental characteristics are wellknown, such as the Tour de France, Boston Marathon, etc. However, inother illustrative embodiments, the user may be presented with aninterface on their client computing device 110 through which the usermay designate, such as in a free form manner, a planned course. Forexample, there may be athletic events that are newly created, or lesswell known, for which the planned course may not be well known and thus,the user may need to designate the planned course via the interface. Inother cases, the user may wish to define their own planned course thatis not affiliated with some previously known athletic event. Thedesignation of the planned course may be performed in any suitablemanner, such as by way of user input to a geographic map drawing linesalong the planned course to designate the planned course, entry ofcoordinates indicating the legs of the planned course, or the like.Moreover, the user may specify the time of day, year, and othercharacteristics defining the planned course via the interface. Forpurposes of the following description, however, it will be assumed thatthe planned course or athletic event is well known such that the actualgeographic location, timing, and other defining characteristics are wellknown.

The user request specifies the planned course and definingcharacteristics of the planned course for which the user wishes totrain. For example, the user may designate the Tour de France in therequest, e.g., “generate a training course for the Tour de France”.Since the Tour de France is a known course and occurs at a known time ofthe year, the user does not need to designate any further definingcharacteristics. The designation of the Tour de France may be used bythe cognitive system to retrieve from a corpus of information theparticular timing information, geographical information of the course,the expected environmental characteristics for that timing andgeographical location, etc. for the Tour de France for the nextoccurrence of the athletic event. In other cases, where the timing ofthe planned course may be variable, the user may need to designate thetiming when the user plans to participate in the athletic event orutilize the planned course.

The request from the user may further specify a geographic region whichthe user wishes to have considered by the cognitive system whenidentifying geographic areas that match the characteristics of theplanned course or athletic event. For example, the request may specifythat the user wishes to have an area having a range of 100 miles aroundthe home location of the user considered. The user may also specify inthe request a geographical region of a county, set of counties, state,set of states, territory, set of territories, country, or set ofcountries, as geographical regions for consideration by the cognitivesystem. For example, the user may request that the cognitive system 100look for geographic areas in the state of Texas, or within 100 miles ofDallas, Tex., that match the characteristics of the Tour de France.

The cognitive system 100 receives the user's request, parses it toidentify the defining characteristics of the planned course or athleticevent and what is being requested, e.g., a training course that matchesthe planned course or athletic event that is within 100 miles of Dallas,Tex. The cognitive system 100 employs the personalized trainingrecommendation engine 120, which may be integrated into the requestprocessing pipeline 108 or otherwise provided as part of the cognitivesystem 100, to obtain and analyze the physical features and othergeographical and/or environment characteristics of the planned course orathletic event, e.g., weather conditions, lighting level, terrain type,temperatures, humidity levels, oxygen levels (for various elevations),changes in elevation, hills per unit of distance, or any othergeographical and/or environmental characteristics that may be pertinentto a user's ability to perform when engaged in the athletic event.

The planned course evaluation module 122 obtains the physical featuresand geographical and/or environmental characteristics of the plannedcourse or athletic event from the corpus or corpora 106. For example,the planned course evaluation module 122 may utilize the naturallanguage processing and scoring mechanisms of the request processingpipeline 108 to evaluate electronic documents in the corpus 106 toidentify and extract such physical features and geographical and/orenvironmental characteristics for the planned course or athletic event.The planned course evaluation module 122 may analyze the characteristicinformation obtained to identify characteristics for the particular timewhen the user plans to engage in the athletic event or planned course,e.g., performing statistical analysis of data obtained from the corpus,such as temperature and/or weather data, to provide a predictedcharacteristic for the time when the user plans to engage in theathletic event or planned course. As a result, a collection ofcharacteristics, correlated to geographic locations of the plannedcourse or athletic event, is generated.

The resulting collection of characteristics for the planned course orathletic event may be provided to the geographic area evaluation module124. The geographic area evaluation module 124 correlates thosecharacteristics with geographical areas in the geographical regionspecified by the user, e.g., a geographical region of a 100 mile radiusaround Dallas, Tex. in the example above. The geographic area evaluationmodule 124 may perform a similar obtaining of characteristic data andanalysis of that characteristic data from the corpus 106 as performed bythe planned course evaluation module 122, however the operation is donefor the specified geographic region. As a result, a set ofcharacteristics for the geographic region is obtained. Thecharacteristics are associated with geographical locations within thegeographic region such that portions of the geographic region, e.g.,geographic areas or portions of geographic areas, may be identified thathave matching characteristics to those of the planned course or athleticevent. Hence, a first set of characteristics is generated by the plannedcourse evaluation module 122, and a second set of characteristics isgenerated by the geographic area evaluation module 124.

The geographic area evaluation module 124 then identifies matchesbetween the first set of characteristics (for the planned course orathletic event) and the second set of characteristics (of the specifiedgeographic region). These matches may be fuzzy matches in that they maymatch within a given tolerance, e.g., 10%, of each other such that aperfect match is not required. The matching may be done with regard to avariety of different characteristics such that different portions of thegeographic region may match a different numbers of characteristics fordifferent portions of the planned course or athletic event, e.g., afirst portion of the geographic region may match elevation and terrainof a portion of the planned course while a second portion of thegeographic region may match a number of hills per unit distancecharacteristic of the planned course.

Portions of geographical areas in the geographical region, which aresimilar in characteristics to that of the planned course or athleticevent, may be selected to generate a training course for the training ofthe individual for the planned course or athletic event. The portions ofgeographical areas may be selected favoring portions that provide acontiguous path or course while also having matching characteristics.For example, if a first portion and a second portion were selected andthey form a contiguous path or course, then these would be favored overselection of a first portion and a third portion that is not contiguouswith the first portion. In cases where there is a competition orbalancing between contiguousness and matching of characteristics,depending on the implementation, one or the other may be weighted orfavored more highly, e.g., contiguousness may be more important in oneembodiment while in another embodiment matching characteristics may bemore important to the generation of a training course. The best matchingportions of the geographical areas, i.e. those that have the largestnumber of matching characteristics or have the highest level of matchingwith characteristics of the planned course or athletic event, which alsohave the most contiguous course generation by selection of thoseportions of geographical areas, will be selected.

It should further be appreciated that in evaluating whether portions are“contiguous” or not, may not require that the portions be adjacent toone another and thus, themselves be contiguous. To the contrary, in someillustrative embodiments, relative distances between portions may beevaluated such that those portions that are closer to one another andthus, can be made contiguous by the addition of other interveningportions, may be more highly weighted than those that are further apartfrom one another and thus, would require larger or more interveningportions to make a contiguous training course. Hence, evaluation of therelative distances between portions having matching characteristics maybe further considered when determining which portions to select forinclusion in a training course.

The geographic area evaluation module 124 takes the selected portions ofgeographical areas and generates a training course for the user based ona combination of the portions of the geographical areas. Thiscombination of portions of geographical areas may require theconcatenation of other portions of geographical areas that do not matchor have relatively low levels of matching to the portions selected, withthe selected portions of geographical areas so that a contiguoustraining course is generated that connects the selected portions ofgeographical areas. This does not mean that the training course needs tobe a closed loop, but rather that all of the selected portions areconnected in some manner either to other selected portions or viaintervening portions that are concatenated to the selected portions. Theresult is a training course that has selected portions of geographicalareas that closely match the characteristics of the planned course orathletic event.

The training course is returned by the cognitive system 100 to the uservia the user's computing device 110. The training course may be outputto the user via the client device 110 so that the user may be able toperform training on the training course and thereby train for theplanned course or athletic event. Moreover, the client computing device110 may provide the training course information to a health/activitymonitoring device 130, which may be a portable or wearable device, whichthe user may be able to consult while training on the training course,e.g., a smart phone, portable tablet computer, smart watch, wearablehealth/activity monitor, or the like. The training course informationmay be output in a graphical manner on the client computing device 110and/or the health/activity monitoring device 130.

The health/activity monitoring device 130 may comprise or communicatewith wearable sensors 132 that monitor various health metrics, biometricmetrics, and/or activity metrics, such as motions performed by the user.The user then performs training on the training course while wearing thewearable sensors 132 and/or health/activity monitoring device 130. Thewearable sensors 132 collect health monitoring and/or activitymonitoring data which may be provided to the cognitive system 100 viathe health/activity monitoring device 130 and client computing device110, or directly from the health/activity monitoring device 130 via thenetwork 102. The health and activity data obtained from the wearablesensors 132 and/or health/activity monitoring device 130 may becorrelated, such as via global positioning system (GPS) capabilities,cellular triangulation, or other location determining capabilities ofelectronic equipment, with portions of the training course to correlatethe user's performance with regard to particular characteristics of thetraining course. In addition to the wearable health and/or activitymonitoring equipment data, the cognitive system may obtain dataregarding the user's performance during training on the training coursefrom medical personnel, the user himself/herself, or the like, such asthrough manual entry of such information, responses to a questionnairepresented after training, evaluation of the user via medical equipmentafter training on the training course, or any other methodology forobtaining data regarding the user's performance and/or health conditionafter training.

Thus, for example, the wearable sensor information from the wearablesensors 132 may indicate the user's heart rate at various points duringthe training course, the pedaling rate or speed of the bicycle atvarious points during the training course, the user's blood pressure,breathing rate, and the like, during various points of the trainingcourse. Moreover, wearable sensors 132 may comprise, or communicatewith, biometric and/or performance processing or bio-processor devicesthat process the raw sensor information and generate more complexmetrics including, for example, performing bioelectrical impedanceanalysis (BIA), photoplethysmogram (PPG), electrocardiograph (ECG), skintemperature analysis, galvanic skin response (GSR), and the like whichmay further be analyzed to measure body fat, skeletal muscle mass, heartrate, heart rhythm, skin temperature, stress level, etc. An example ofsuch a bio-processor is the Samsung Bio-Processor, under development bythe Samsung Electronics Co., Ltd. and described in the article “SamsungAnnounces a New Smart Biometric Processor for the Mobile Market,”TweakTown website, Dec. 31, 2015. Various sensor and bio-processor baseddevices are available to measure a plethora of different user health andperformance metrics, any of which, and any combination of which, may beused with the mechanisms of the illustrative embodiments withoutdeparting from the spirit and scope of the illustrative embodiments.

This information may be correlated with the locations along the trainingcourse where the particular performance and/or health data was obtainedby the wearable sensors 132. The information gathered after training mayalso be utilized as a more general performance and/or health data forthe training course as a whole. Combined, this information provides anindication of the user's performance during the training on the trainingcourse which, when analyzed, will identify areas where the user is weakor has insufficient performance both with regard to the user'scapabilities and with the particular characteristics of the trainingcourse, and ultimately the planned course or athletic event that thetraining course emulates.

In addition, the cognitive system 100 ingests personal data about theuser from the corpus 106 including data regarding the user's previousperformance on similar types of courses or in similar athletic events,as well as health information including physical attributes,measurements of fitness and physical capabilities, and the like. Thispersonal data about the user may also include previously obtained healthand/or activity information obtained from the wearable sensors 132associated with the user. This personal health and/or activityinformation may include such information as previous measurements of theuser with regard to fitness and strain level during performance ofphysical activities. For example, sports medicine facilities, hospitals,doctors offices, and the like, may make use of various types of medicalequipment to measure various aspects of the user's personal health andrecord that information into data structures in medical computingsystems. This data may be provided as part of the corpus 106 that isingested by the cognitive system 100 along with other data from thewearable activity/health sensors 132, data entered manually by a healthprovider or the user, such as via their client computing device 110and/or a medical professional computing device, or the like. Any sourceof personal health and/or activity information about the user may beincluded as a source of data provided in a corpus of information.

The cognitive system 100 also ingests data regarding medical and/orathletic domains from the corpus 106, as resource information that maybe utilized to perform cognitive operations, such as identifyingparticular training regimens, exercises, and training coursecharacteristics, that will assist a user in strengthening theircapabilities with regard to areas of weakness or insufficientperformance. For example, the cognitive system ingests data fromphysical therapy and sports medicine journals that are representedelectronically in the corpus 106, and which comprise contentrecommending methods for improving human capabilities, such as improvingfrailty or weakness in various physical performance areas. The resourceinformation may further comprise information from other medical and/orathletic sources including the American medical association (AMA), theAmerican Medical Society for Sports Medicine (AMSSM), National AthleticTrainer's Association (NATA), various physician's desk reference texts,medication texts, and/or any other source of information that may bepertinent to the physical training of a user for a particular athleticevent or course.

The user performance evaluation module 126 evaluates the activity and/orhealth monitoring data obtained from the various sources to correlateobserved stress/strain and/or low performance or weaknesses with typesof motions used at various portions of the training course. The userperformance evaluation module 126 performs analysis of the user'sperformance with regard to both activities and health, at various pointsalong the training course to identify characteristics of the trainingcourse that cause excessive stress or strain on the user, cause the userto perform less sufficiently, or the like. The indications of weaknessin performance, e.g., stress or strain on the user, or the like, may bedetermined from comparison of the user's previous performance on othertraining courses, in previous athletic events where performance data wascollected and stored, or the like. In some illustrative embodiments, theuser's performance data for the present training course may also becompared to other persons that have trained on a similar trainingcourse, performance data for persons that have engaged in the athleticevent or race course that the user is training for, or the like. Incomparing to other persons, the user's characteristics may be used toidentify a pool or group of other persons having similar characteristicsand for which performance data has been obtained and stored, e.g.,persons having similar demographics, similar health/physical attributes,or the like.

These types of motions determined to cause stress, strain, orinsufficient performance, as well as other areas of weakness orinsufficient performance with regard to both health and activitycapabilities of the user, may then be used by the personalized trainingmodule 128 to identify exercises or training regimens that the user mayimplement to strengthen the user's capabilities in these areas ofweakness or insufficiency in performance with regard to specificelements of the training course in question and thus, the ultimatecourse or athletic event. These training regimens or exercises maycomprise both training regimens and exercises with regard to the realworld physical training course, exercises and/or training activitiesperformed in a gym or with more stationary gym equipment, exercisesand/or training activities the user can perform off the training courseand outside of a gym environment, and/or the like. These trainingregimens and/or exercises may take into account the physical conditionof the user as determined from the health information, the user'scurrent physical capabilities based on the health information, and thelike. The determination of the training regimen and exercises may bebased on resource information of the corpus 106 that identify trainingactivities and exercises that result in increased performance withregard to particular areas of weakness or insufficient performance. Forexample, resource information of the corpus 106 may indicate how toincrease strength in a given area of the body after an injury, increasestrength when an area of the body is weakened through repetitive stressinjuries, disuse, etc. This resource information may come fromelectronic documentation of the corpus 106 representing knowledge inphysical therapies used by physical therapists, doctors, astronauts, andthe like.

In some cases, a new analysis of the geographical area in thegeographical region specified by the user may be performed to identifyportions of the geographical area that have characteristics that willassist the user in strengthening the areas of weakness or insufficiencyin performance. For example, if it is determined that the user seems tohave difficulty on hilly terrain and needs to increase the lungcapacity, endurance, and/or strength with regard to hilly terrain, thenthe training course may be modified to emphasize hilly areas that willassist the user in building up the user's performance with regard tohilly areas. Moreover, the geographical region may be analyzed toidentify other portions of geographical areas that may not have beenpreviously present in the training course, to thereby add those portionsto the training course to emphasize hilly areas as part of the trainingcourse. These additions may also replace other portions in the trainingcourse for which the user has shown sufficient performance. Thus, amodified training course may be generated in addition to, or inreplacement of, the training regimens and/or exercises mentioned above.

The training regimen, the exercises, and/or the modified training coursemay be output to the client computing device 110 and/or thehealth/activity monitoring device 130 for implementation by the user tocontinue or focus their training on the areas where the cognitive system100 has determined that the user exhibits weakness or insufficientperformance. The output of the training regimen, exercises, and/ormodified training course may further identify the reasons for thevarious elements of the output, e.g., the particular areas of weaknessor insufficient performance identified by the cognitive system and theway in which the elements of the training regimen, exercises, and/ormodified training course will improve those areas if performed properly.

It should be appreciated that this process may be repeated such that acontinuous personalized training is obtained until the user discontinuesthe process. Thus, the user's performance on the modified trainingcourse may be monitored and the process repeated to further modify thetraining course and/or provide other training regimens or exercises. Thecognitive system 100 may also maintain in association with an identifierof the user and the planned course or athletic activity, the originaltraining course generated by the cognitive system 100 for periodicevaluation of the user while training. That is, periodically, thecognitive system 100 may send an output to the client computing device110 and/or health/activity monitoring device 130 to inform the user thatthey should try the original training course again so as to see wherethe user has improved in performance. The cognitive system 100 mayrepeat the above described functions to determine how the user shouldcontinue the training in view of their new physical performance on thetraining course.

Thus, the illustrative embodiments provide a cognitive system forproviding personalized training recommendations to a user that are basedon an individual assessment of the user's performance with regard to atraining course that emulates the characteristics of a planned course orathletic event. The personalized training recommendations may includeidentifying a training regimen, exercises, and/or a modified trainingcourse to assist the user in strengthening their performance in areas ofweakness or insufficient performance identified by the cognitive systemwith regard to the user's health and activity and the characteristics ofthe training course, and ultimately the planned course or athletic eventemulated by the training course.

As noted above, the mechanisms of the illustrative embodiments arerooted in the computer technology arts and are implemented using logicpresent in such computing or data processing systems. These computing ordata processing systems are specifically configured, either throughhardware, software, or a combination of hardware and software, toimplement the various operations described above. As such, FIG. 2 isprovided as an example of one type of data processing system in whichaspects of the present invention may be implemented. Many other types ofdata processing systems may be likewise configured to specificallyimplement the mechanisms of the illustrative embodiments.

FIG. 2 is a block diagram of an example data processing system in whichaspects of the illustrative embodiments are implemented. Data processingsystem 200 is an example of a computer, such as server 104 or client 110in FIG. 1, in which computer usable code or instructions implementingthe processes for illustrative embodiments of the present invention arelocated. In one illustrative embodiment, FIG. 2 represents a servercomputing device, such as a server 104, which, which implements acognitive system 100 and QA system pipeline 108 augmented to include theadditional mechanisms of the illustrative embodiments describedhereafter.

In the depicted example, data processing system 200 employs a hubarchitecture including north bridge and memory controller hub (NB/MCH)202 and south bridge and input/output (I/O) controller hub (SB/ICH) 204.Processing unit 206, main memory 208, and graphics processor 210 areconnected to NB/MCH 202. Graphics processor 210 is connected to NB/MCH202 through an accelerated graphics port (AGP).

In the depicted example, local area network (LAN) adapter 212 connectsto SB/ICH 204. Audio adapter 216, keyboard and mouse adapter 220, modem222, read only memory (ROM) 224, hard disk drive (HDD) 226, CD-ROM drive230, universal serial bus (USB) ports and other communication ports 232,and PCI/PCIe devices 234 connect to SB/ICH 204 through bus 238 and bus240. PCI/PCIe devices may include, for example, Ethernet adapters,add-in cards, and PC cards for notebook computers. PCI uses a card buscontroller, while PCIe does not. ROM 224 may be, for example, a flashbasic input/output system (BIOS).

HDD 226 and CD-ROM drive 230 connect to SB/ICH 204 through bus 240. HDD226 and CD-ROM drive 230 may use, for example, an integrated driveelectronics (IDE) or serial advanced technology attachment (SATA)interface. Super I/O (SIO) device 236 is connected to SB/ICH 204.

An operating system runs on processing unit 206. The operating systemcoordinates and provides control of various components within the dataprocessing system 200 in FIG. 2. As a client, the operating system is acommercially available operating system such as Microsoft® Windows8®. Anobject-oriented programming system, such as the Java™ programmingsystem, may run in conjunction with the operating system and providescalls to the operating system from Java™ programs or applicationsexecuting on data processing system 200.

As a server, data processing system 200 may be, for example, an IBM®eServer™ System p° computer system, running the Advanced InteractiveExecutive) (AIX® operating system or the LINUX® operating system. Dataprocessing system 200 may be a symmetric multiprocessor (SMP) systemincluding a plurality of processors in processing unit 206.Alternatively, a single processor system may be employed.

Instructions for the operating system, the object-oriented programmingsystem, and applications or programs are located on storage devices,such as HDD 226, and are loaded into main memory 208 for execution byprocessing unit 206. The processes for illustrative embodiments of thepresent invention are performed by processing unit 206 using computerusable program code, which is located in a memory such as, for example,main memory 208, ROM 224, or in one or more peripheral devices 226 and230, for example.

A bus system, such as bus 238 or bus 240 as shown in FIG. 2, iscomprised of one or more buses. Of course, the bus system may beimplemented using any type of communication fabric or architecture thatprovides for a transfer of data between different components or devicesattached to the fabric or architecture. A communication unit, such asmodem 222 or network adapter 212 of FIG. 2, includes one or more devicesused to transmit and receive data. A memory may be, for example, mainmemory 208, ROM 224, or a cache such as found in NB/MCH 202 in FIG. 2.

Those of ordinary skill in the art will appreciate that the hardwaredepicted in FIGS. 1 and 2 may vary depending on the implementation.Other internal hardware or peripheral devices, such as flash memory,equivalent non-volatile memory, or optical disk drives and the like, maybe used in addition to or in place of the hardware depicted in FIGS. 1and 2. Also, the processes of the illustrative embodiments may beapplied to a multiprocessor data processing system, other than the SMPsystem mentioned previously, without departing from the spirit and scopeof the present invention.

Moreover, the data processing system 200 may take the form of any of anumber of different data processing systems including client computingdevices, server computing devices, a tablet computer, laptop computer,telephone or other communication device, a personal digital assistant(PDA), or the like. In some illustrative examples, data processingsystem 200 may be a portable computing device that is configured withflash memory to provide non-volatile memory for storing operating systemfiles and/or user-generated data, for example. Essentially, dataprocessing system 200 may be any known or later developed dataprocessing system without architectural limitation.

As noted above, the data processing system 200 may be employed toimplement a cognitive system 100 that is augmented to include thepersonalized training recommendation engine 120. As such, the dataprocessing system 200 provides hardware and/or specialized softwareexecuting on the hardware, that implement this personalized trainingrecommendation engine 120. The personalized training recommendationsystem operates to receive a request from a user to generate apersonalized training regimen for a specified athletic event or plannedcourse. The personalized training recommendation engine 120 identifiesevent and/or planned course information associated with the specifiedathletic event or planned course, such as physical features,geographical and/or environmental characteristics, and the like. Thepersonalized training recommendation engine 120 identifies userinformation associated with the user, such as health and/or activityinformation including demographic information, previous performanceinformation, general medical information, and the like. The personalizedtraining recommendation engine 120 utilizes the event or planned courseinformation and the user information, to identify a set of geographicalareas within a specified geographical region that emulatecharacteristics associated with the specified athletic event or plannedcourse within a predetermined tolerance threshold. Responsive toidentifying more than one geographical area that emulates thecharacteristics of portions of the planned course or athletic event, thepersonalized training recommendation engine 120 selects from the morethan one geographical areas the one that ranks highest to emulating thecharacteristics of the portion of the planned course or athletic eventand provides a higher likelihood of providing a contiguous trainingcourse with regard to other selected geographical areas.

The personalized training recommendation engine 120 then generates atraining course from the selected geographical areas and presents thetraining course to the user as the personalized training regimen for useby the user in preparing for the specified athletic event or plannedcourse. The generation of the training course that emulates thecharacteristics associated with the specified athletic event or plannedcourse may involve identifying, by the personalized trainingrecommendation system 120, a training course that is within apredetermined distance of a location associated with the user, such as ahome location, and which has portions that emulate characteristicsassociated with the portions of the specified athletic event or plannedcourse.

The event information associated with the athletic event or plannedcourse may include one or more of a date of the specified athletic eventor planned course, a location of the specified athletic event or plannedcourse, a course map of the specified athletic event or planned course,a terrain associated with the athletic event or planned course, orhistorical environmental characteristics associated with the locationand the date. The user information may include one or more of aperformance of the user on past events, age of the user, gender of theuser, physical attributes of the user such as weight, height, armlengths, leg lengths, and the like. The user information may furtherinclude historical health information for the user including heartrates, lung capacity, blood pressure, range of motion of various limbs,and the like.

It should be appreciated that the selection of geographic areas mayresult in a failure to identify geographic areas that exactly match thecharacteristics of the planned course or athletic event, or even matchwithin the given tolerance. In response to a failure to find geographicareas that exactly match or match within the given tolerance, thepersonalized training recommendation system 120 may select geographicalareas that meet a greatest subset of the characteristics associated withthe specified athletic event or planned course. Furthermore, thetraining course generated may be a combination of the selected one ormore geographic areas in which intervening geographic areas are includedto provide a contiguous training course.

The personalized training recommendation system 120 may also generateone or more exercises to be performed on one or more pieces of exercisedevices to train the user for those characteristics that are notrepresented in the training course but are characteristics associatedwith the specified athletic event or planned course. That is, if atraining course cannot be generated that includes a representation of acharacteristic of the planned course or athletic event, then thischaracteristic may be replicated using exercise equipment so as to allowthe user to still train for this characteristic even though there is nogeographical area within the specified geographical region where thischaracteristic is present.

As noted above, the personalized training recommendation system 120 mayalso monitor the performance of the user on the training course viawearable sensors and health/activity monitoring systems. The datagathered may be correlated to geographical locations along the trainingcourse and the corresponding characteristics of the training course atthose geographical locations. This information may be used to identifyareas of weakness or insufficient performance of the specific user withregard to the specific training course characteristics. A trainingregimen, set of exercises, and/or modified training course may then begenerated to assist the user in strengthening his/her capabilities withregard to the identified areas of weakness or insufficient performance.

To illustrate the operation of the illustrative embodiments, considerFIGS. 3A-3C which depict an example scenario in which a user wishes totrain for a specified planned course using the mechanisms of theillustrative embodiments. FIG. 3A illustrates an example diagram of arace course for which a user wishes to train in accordance with oneillustrative embodiment. FIG. 3B illustrates an example diagram of atraining course that may be generated from analysis of a geographicalarea within a specified region based on the characteristics of the racecourse in FIG. 3A, in accordance with one illustrative embodiment. FIG.3C illustrates an example diagram of a modification to the trainingcourse based on an evaluation of a user's performance on the trainingcourse of FIG. 3B relative to other performance indicators of the userin previous training or race events, other persons that have engaged inthe race event on the race course of FIG. 3A and/or training course ofFIG. 3B, or the like, in accordance with one illustrative embodiment.

As shown in FIG. 3A, and as described previously, a user may submit tothe personalized training recommendation engine 120 in FIG. 1 a requestto generate a personalized training course for training for a particularspecified race course, race event, or the like. The request may furtherspecify a geographical region to be used to generate the trainingcourse, and if necessary, may specify characteristics of the race courseor event, such as time of year when the race event will occur, time ofday, or the like. As noted above, if the race course or race event isnot a well-known race course or race event, the request may be generatedby a user using their client computing device and, via a user interface,specifying the geographical and environmental conditions of the raceevent or race course, e.g., tracing the race course or event on ageographical map or the like. For ease of explanation herein, it will beassumed that the race course shown in FIG. 3A is for a well-known racecourse or race event for which information is already available to thepersonalized training recommendation engine 120 via the ingestion of acorpus 106 having such information provided therein.

In response to receiving the request from the user, the personalizedtraining recommendation engine 120 retrieves information about the racecourse and evaluates the planned course using the planned courseevaluation module 122, such as by obtaining the physical features andgeographical and/or environmental characteristics of the planned courseor athletic event from the corpus or corpora 106. For example, theplanned course evaluation module 122 may utilize the natural languageprocessing and scoring mechanisms of the request processing pipeline 108to evaluate electronic documents in the corpus 106 to identify andextract such physical features and geographical and/or environmentalcharacteristics for the planned course or athletic event. The plannedcourse evaluation module 122 may analyze the characteristic informationobtained to identify characteristics for the particular time when theuser plans to engage in the athletic event or planned course to providea predicted characteristic for the time when the user plans to engage inthe athletic event or planned course. As a result, a collection ofcharacteristics, correlated to geographic locations of the plannedcourse or athletic event, is generated.

For example, as shown in FIG. 3A, the planned course or race course 300may be broken up into segments 310 for which separate sets of physical,geographical, and/or environmental characteristics are associated, whichmay differ from one another. For example, segment 315, which is oneexample of a segment 310 of the planned course or race course 300, hasassociated characteristics 317 of which examples are elevation or grade,surface type, and hill density, among others. Other segments 310 mayhave similar types of characteristics but with different values. Itshould be appreciated that in some cases, some portions 320 of theplanned course or race course may not have identifiable characteristics.These characteristics for the segments may be obtained from varioussources of data providing that data to the corpus 106, e.g.,governmental sources that collect data for geographic regions, weatherinformation sources, athletic event sources that gather suchinformation, or any other source of information pertinent to thephysical, geographical, and environment characteristics of the plannedcourse or race course. This information may be analyzed using analysisalgorithms or engines of the planned course evaluation module 122 tocorrelate and calculate values for various characteristics, which mayinclude statistical values for such characteristics, such as averages,medians, distributions, and the like.

In addition, depending on the planned course or race course,characteristics 305 may be identified for the entirety of the plannedcourse or race course. That is, information from the corpus 106 may beidentified to identify overall characteristics of the planned course orrace course such as the total length, average temperature, averagealtitude, etc. The characteristics of the overall planned course and thecharacteristics of individual segments may together be used to identifycomparable portions of training courses from the specified region to beevaluated for generation of a training course.

The resulting collection of characteristics for the planned course orathletic event may be provided to the geographic area evaluation module124. The geographic area evaluation module 124 correlates thosecharacteristics with geographical areas in the geographical regionspecified by the user, e.g., a geographical region of a 100 mile radiusa home location 395 in FIG. 3B in the depicted example. The geographicarea evaluation module 124 may perform a similar obtaining ofcharacteristic data and analysis of the characteristic data from thecorpus 106 as performed by the planned course evaluation module 122,however the operation is done for the specified geographic region. As aresult, a set of characteristics for the geographic region is obtained.The characteristics are associated with geographical locations withinthe geographic region such that portions 330-380 of the geographicregion may be identified that have fuzzy matched characteristics tothose of the planned course or athletic event. Hence, a first set ofcharacteristics 317 is generated by the planned course evaluation module122, and a second set of characteristics 337 is generated by thegeographic area evaluation module 124 for each of the portions of thegeographic area. It should be appreciated that even though only a singleset first and second characteristics 317 and 337 is shown in FIGS. 3Aand 3B, each portion or segment may have its own associated set ofcharacteristics whose values may be the same or may differ from otherportions or segments.

The geographic area evaluation module 124 then identifies matches, offuzzy matches between the first set of characteristics 317 (for theplanned course or athletic event) and the second set of characteristics337 (portions of the specified geographic region). The matching may bedone with regard to each characteristics and a matching score may begenerated based on a combination of degrees of matching of the variouscharacteristics using a matching score calculation function thatevaluates these matches quantitatively. The various characteristics andthe degree of matching may be weighted according to relative importanceof the characteristics to the identification matching portions/segments.The weights may be learned over time, such as via a machine learningprocess, may be specified by a user, or the like. The weights maylikewise be dependent on the particular type of athletic event orplanned course, e.g., different characteristic may be more important fora foot race as opposed to a bicycling race, as opposed to a sailingrace.

For example, it may be relatively more important to the matching thatthe elevation of grading of the surface characteristic match moreclosely between segments of the planned course and portions of thegeographical region than the surface type and hill density may berelatively more important than elevation or grading. The score that iscalculated based on the matching function may be compared to one or morethreshold values that indicate a minimum level of matching required todetermine that a portion of the geographical area matches a segment ofthe planned course or race source. For those portions that have matchingscores that meet or exceed the one or more threshold values, the portionmay be determined to be a matching portion of the geographical region.It should be appreciated that a variety of different characteristics maybe evaluated by the matching function such that different portions ofthe geographic region may match a different numbers of characteristicsfor different portions of the planned course or athletic event.

Portions 330-380 of the geographical region, which are similar incharacteristics to one or more of the segments 310 of the planned courseor athletic event, may be selected to generate a training course for thetraining of the individual for the planned course or athletic event. Theportions of the geographical region may be selected favoring portionsthat provide a contiguous path or course while also having matchingcharacteristics.

Thus, for example, in the depicted example, portions 330-380 all havematching scores that are sufficient to meet or exceed a threshold value.As shown in FIG. 3B, portions 330, 340, 350, and 380 may be combined togenerate contiguous training course with the introduction of otherportions 390 that were not portions that were considered to havesufficiently high enough matching scores to be included as matchingportions. It should be appreciated that portions 360 and 370 were alsocandidate matching portions, but were not selected for inclusion in thetraining course, which may be based on a variety of evaluation factors.For example, the evaluation may determine that the strength of thematching of portions 360 and 370 to segments 310 in the planned courseis not sufficiently high, e.g., the matching score of portions 360, 370is relatively smaller than the portions 330, 340, 350, and 380.Moreover, the evaluation may determine whether there are other portionsthat match similar individual characteristics but have a higher matchingscore overall.

Furthermore, the evaluation may evaluate the lengths of the non-matchingportions that would be required to generate a contiguous training coursewith those portions and may select portions so as to minimize the lengthof the intervening portions that would be required to generate acontiguous training course. In some illustrative embodiments, theselection of matching portions may further evaluate which sets ofmatching portions make the overall training course characteristics 335more closely match the overall characteristics 305 of the planned courseor race course, e.g., make the total length as close as possible.Various factors and evaluations may be made so as to distinguish whichof the matching portions 330-380 to include the training coursedepending on the desired implementation, and each of these evaluationsare intended to be within the spirit and scope of the present invention.

The geographic area evaluation module 124 takes the selected portions330-350 and 380 of the geographical region of 100 miles radius about thehome location 395 and generates a training course for the user based ona combination of the portions 330-350 and 380. This combination ofportions 330-350 and may require the concatenation of other portions 390that do not match or have relatively low levels of matching, with theselected portions 330-350 and 380 so that a contiguous training courseis generated that connects the selected portions 330-350 and 380. WhileFIG. 3B shows this contiguous training course to be a closed loop, thisis not required and in fact that training course may be a non-closedtraining course. The result is a training course that has selectedportions 330-350 and 380 of the geographical region that closely matchthe characteristics of the planned course or athletic event with thepotential inclusion of non-matching portions in order to connect theselected portions 330-350 and 380.

The training course is returned by the cognitive system 100 to the uservia the user's computing device 110. The training course may be outputto the user via the client device 110, health/activity monitoring device130, or the like, so that the user can perform training and the user'sperformance during training may be monitored as previously discussedabove. The user then performs training on the training course whilewearing the wearable sensors 132 and/or health/activity monitoringdevice 130. The wearable sensors 132 collect health monitoring and/oractivity monitoring data which may be provided to the cognitive system100 via the health/activity monitoring device 130 and client computingdevice 110, or directly from the health/activity monitoring device 130via the network 102. The health and activity data obtained from thewearable sensors 132 and/or health/activity monitoring device 130 may becorrelated, such as via global positioning system (GPS) capabilities,cellular triangulation, or other location determining capabilities ofelectronic equipment, with portions 330-350 and 380 of the trainingcourse to correlate the user's performance with regard to particularcharacteristics of the training course. For example, it may bedetermined that the user's heart rate, breathing rate, overall strainlevel, time for completion, etc. all are elevated during the user'straining in portion 330 which indicates the user's difficulty and/orlack of sufficient performance in portion 330. This information may becorrelated with the characteristics of portion 330 indicating thecharacteristics with which the user is having difficulty or where theuser needs to concentrate training for improvement of their performance.

In addition to the wearable health and/or activity monitoring equipmentdata, as discussed above, the personalize training recommendation engine120 may obtain data regarding the user's performance during training onthe training course from medical personnel, the user himself/herself, orthe like, such as through manual entry of such information, responses toa questionnaire presented after training, evaluation of the user viamedical equipment after training on the training course, or any othermethodology for obtaining data regarding the user's performance and/orhealth condition after training. The information gathered after trainingmay also be utilized as a more general performance and/or health datafor the training course as a whole. Combined, this information providesan indication of the user's performance during the training on thetraining course which, when analyzed, will identify areas where the useris weak or has insufficient performance both with regard to the user'scapabilities and with the particular characteristics of the trainingcourse, and ultimately the planned course or athletic event that thetraining course emulates.

The performance information obtained from the monitoring device 130while the user trains on the training course may be correlated with thecharacteristics of portions of the training course to identify areaswhere additional training or performance improvement is needed which maythen be correlated with exercises, activities, and even other portionsof the geographical region which may be useful in assisting the user inimproving their performance. Personal data about the user, ingested bythe cognitive system 100 from the corpus 106, as well as resourceinformation, may be used by the user performance evaluation module 126to determine measures of the user's performance and actions to performto improve that performance where needed. The indications of weakness inperformance may be determined from comparison of the user's previousperformance on other training courses, in previous athletic events whereperformance data was collected and stored, or the like. In someillustrative embodiments, the user's performance data for the presenttraining course may also be compared to other persons that have trainedon a similar training course, performance data for persons that haveengaged in the athletic event or race course that the user is trainingfor, or the like.

The determinations regarding stress, strain, or insufficient performancemade by the user performance evaluation module 126 may then be used bythe personalized training module 128 to identify exercises or trainingregimens that the user may implement to strengthen the user'scapabilities in these areas of weakness or insufficiency in performancewith regard to specific elements of the training course in question andthus, the ultimate course or athletic event. In some cases, a newanalysis of the geographical region specified by the user may beperformed to identify portions 360 and 370 of the geographical regionthat have characteristics that will assist the user in strengthening theareas of weakness or insufficiency in performance. For example, portion360 may comprise similar grade or elevation characteristics to portion330 with which the user has had difficulty or insufficient performance.By adding in portion 360 to the training course, either in addition toor in replacement of other portions, such as portions for which the userprovides sufficient performance, the training course is modified toemphasize an area of weakness or insufficient performance of the user.Thus, when the user trains using the modified training course, as shownin FIG. 3C, the user is trained more heavily with regard to steeperelevations or gradings than the original training course and therebystrengthens the user with regard to those course characteristics.

The training regimen, the exercises, and/or the modified training coursemay be output to the client computing device 110 and/or thehealth/activity monitoring device 130 for implementation by the user tocontinue or focus their training on the areas where the cognitive system100 has determined that the user exhibits weakness or insufficientperformance. The output of the training regimen, exercises, and/ormodified training course may further identify the reasons for thevarious elements of the output, e.g., the particular areas of weaknessor insufficient performance identified by the user performanceevaluation module 126 and the way in which the elements of the trainingregimen, exercises, and/or modified training course will improve thoseareas if performed properly.

It should be appreciated that FIGS. 3A-3C are only provided as onesimplified example. Many modifications to the example depicted in FIGS.3A-3C may be made without departing from the spirit and scope of thepresent invention.

FIG. 4 is a flowchart outlining an example operation of a personalizedtraining recommendation engine in accordance with one illustrativeembodiment. The operation outlined in FIG. 4 assumes that the cognitivesystem implementing the personalized training recommendation engine hasingested one or more corpora of information regarding geographic areas,planned courses and/or athletic events, user health and activity data,and the like. Thus, the operations outlined in FIG. 4 will highlight theoperations performed by the personalized training recommendation enginebased on the ingested information from the one or more corpora.

As shown in FIG. 4, the operation starts by receiving a user request togenerate a training course for a specified planned course or athleticevent (step 410). The characteristics of the planned course or athleticevent are identified to generate a first set of course characteristics(step 420). The geographical region from which the training course is tobe generated is identified from the user request (step 430) and a secondset of characteristics for portions, or geographical areas, within thegeographical region is generated (step 440). A matching operation isperformed to identify portions the geographical region whosecharacteristics match, within a given tolerance, segments of the plannedcourse or athletic event (step 450). Portions of the geographical regionare selected for inclusion in a training course based on a degree ofmatching of the various characteristics of segments of the plannedcourse/athletic event and the portions of geographical region, as wellas the ability to combine the geographical areas together to form acontiguous training course (step 460). A training course is generatedfrom the selected portions, which may include intervening portions thatare included to provide a contiguous training course (step 470). Thetraining course is then output to the user via a client computing device(step 480).

The user then performs training on the training course while wearingmonitoring equipment to monitor the user's health metrics and activityduring the training (step 490). The monitored data is provided to thepersonalized training recommendation engine which correlates themonitored data with portions of the training course and thecharacteristics of the training course at these portions (step 500).Based on the correlation, areas of weakness or insufficient performanceare identified (step 510) and a training regimen and/or exercises toincrease the user's strength in these areas of weakness or insufficientperformance are generated and output to the user (step 520). Inaddition, a modified training course that includes areas where theuser's weakness or insufficient performance are prevalent may begenerated and output to the user as a suggested modified training course(step 530). The operation then terminates. It should be appreciated thatwhile FIG. 4 shows the operation terminating, the operation may berepeated for continuous training and refinement of the personalizedtraining of the user for the specified planned course or athletic event.

As noted above, it should be appreciated that the illustrativeembodiments may take the form of an entirely hardware embodiment, anentirely software embodiment or an embodiment containing both hardwareand software elements. In one example embodiment, the mechanisms of theillustrative embodiments are implemented in software or program code,which includes but is not limited to firmware, resident software,microcode, etc.

A data processing system suitable for storing and/or executing programcode will include at least one processor coupled directly or indirectlyto memory elements through a communication bus, such as a system bus,for example. The memory elements can include local memory employedduring actual execution of the program code, bulk storage, and cachememories which provide temporary storage of at least some program codein order to reduce the number of times code must be retrieved from bulkstorage during execution. The memory may be of various types including,but not limited to, ROM, PROM, EPROM, EEPROM, DRAM, SRAM, Flash memory,solid state memory, and the like.

Input/output or I/O devices (including but not limited to keyboards,displays, pointing devices, etc.) can be coupled to the system eitherdirectly or through intervening wired or wireless I/O interfaces and/orcontrollers, or the like. I/O devices may take many different formsother than conventional keyboards, displays, pointing devices, and thelike, such as for example communication devices coupled through wired orwireless connections including, but not limited to, smart phones, tabletcomputers, touch screen devices, voice recognition devices, and thelike. Any known or later developed I/O device is intended to be withinthe scope of the illustrative embodiments.

Network adapters may also be coupled to the system to enable the dataprocessing system to become coupled to other data processing systems orremote printers or storage devices through intervening private or publicnetworks. Modems, cable modems and Ethernet cards are just a few of thecurrently available types of network adapters for wired communications.Wireless communication based network adapters may also be utilizedincluding, but not limited to, 802.11 a/b/g/n wireless communicationadapters, Bluetooth wireless adapters, and the like. Any known or laterdeveloped network adapters are intended to be within the spirit andscope of the present invention.

The description of the present invention has been presented for purposesof illustration and description, and is not intended to be exhaustive orlimited to the invention in the form disclosed. Many modifications andvariations will be apparent to those of ordinary skill in the artwithout departing from the scope and spirit of the describedembodiments. The embodiment was chosen and described in order to bestexplain the principles of the invention, the practical application, andto enable others of ordinary skill in the art to understand theinvention for various embodiments with various modifications as aresuited to the particular use contemplated. The terminology used hereinwas chosen to best explain the principles of the embodiments, thepractical application or technical improvement over technologies foundin the marketplace, or to enable others of ordinary skill in the art tounderstand the embodiments disclosed herein.

What is claimed is:
 1. A computer program product comprising a computerreadable storage medium having a computer readable program storedtherein, wherein the computer readable program, when executed on acomputing device, causes the computing device to: receive a request froma client computing device associated with a user, the request being togenerate a personalized training regimen for a specified athletic eventoccurring at a future time; extract, by a cognitive computing system,event information comprising at least one of physical features orenvironmental features of one or more geographical segments of thespecified athletic event based on an ingestion of first data regardingthe specified athletic event by the cognitive computing system andgeneration, by the cognitive computing system, of a first set offeatures corresponding to the specified athletic event extracted fromthe ingested first data; identify, by the cognitive computing system,based on the event information, geographical region information from aknowledge base, for one or more portions of a geographical region withina specified geographical range of a home location associated with theuser, wherein the one or more portions approximate at least one of thephysical features or environmental features of the one or moregeographical segments associated with the specified athletic eventwithin a predetermined tolerance, wherein the identification of thegeographical region information is based on a generation, by thecognitive computing system, of a second set of features comprising atleast one of physical features or environmental features correspondingto the one or more portions of the geographical region extracted fromthe ingested second data, and a cognitive comparison of the first set offeatures and the second set of features using machine learning logicthat learns weights associated with different types of features througha machine learning process and applies the weights to the differenttypes of features present in the second set of features via one or morefunctions to score the one or more portions of the geographical region;generate, by the cognitive computing system, a training course at leastby combining a selected set of the portions of the geographical regionbased on an evaluation, by the cognitive computing system, of a level ofmatching, for each portion of the geographical region in the set ofportions, based on the scores associated with the one or more portionsof the geographical region generated by the machine learning logic; andtransmit, by a personalized training recommendation engine, thegenerated training course to the client computing device forpresentation to the user as the personalized training regimen for use bythe user in preparing for the specified athletic event.
 2. The computerprogram product of claim 1, wherein the event information includes oneor more of a date of the specified athletic event, a location of thespecified athletic event, a course map of the specified athletic event,a terrain associated with the course, or historical environmentalcharacteristics associated with the location and the date.
 3. Thecomputer program product of claim 1, wherein the computer readableprogram further causes the computing device to: monitor, viacommunication with a wearable health or activity monitoring deviceassociated with the user, performance of the user during training on thegenerated training course to generate performance data; determine areasof weakness or insufficient performance by the user on the trainingcourse based on an evaluation of the performance data; and correlate theareas of weakness or insufficient performance with characteristics ofcorresponding portions of the training course.
 4. The computer programproduct of claim 3, wherein the computer readable program further causesthe computing device to: correlate the areas of weakness or insufficientperformance, the characteristics of corresponding portions of thetraining course, and one or more exercises to be performed on one ormore pieces of exercise devices to train the user for thosecharacteristics of the corresponding portions of the training course;and present an output to the user to inform them of the areas ofweakness or insufficient performance, the characteristics of thecorresponding portions of the training course, and the one or moreexercises to be performed.
 5. The computer program product of claim 4,wherein correlating the areas of weakness or insufficient performance,the characteristics of corresponding portions of the training course,and one or more exercises to be performed further comprises: correlatingthe areas of weakness or insufficient performance with types of motionsused at the corresponding portions of the training course; andcorrelating the types of motions with the one or more exercises to beperformed on one or more pieces of exercise devices to train the user.6. The computer program product of claim 3, wherein the computerreadable program further causes the computing device to: modify thetraining course to include one or more other portions of thegeographical region, not previously in the set of portions, based on thecorrelation of areas of weakness or insufficient performance withcharacteristics of corresponding portions of the training course, tothereby generate a modified training course.
 7. The computer programproduct of claim 6, wherein the one or more other portions are one ormore other portions that have at least one similar characteristic to thecharacteristics of the corresponding portions of the training course forwhich the user has shown a weakness or insufficient performance.
 8. Thecomputer program product of claim 6, wherein modifying the trainingcourse further comprises modifying the training course to include otherportions of the geographical region, not previously in the set ofportions, and which do not match characteristics of the one or moregeographical segments of the specified athletic event, but have at leastone of physical features or environmental features that will assist theuser in strengthening their performance with regard to the identifiedareas of weakness or insufficient performance.
 9. The computer programproduct of claim 1, wherein the computer readable program further causesthe computing device to generate the training course at least byconcatenating the selected set of portions with other non-selectedintervening portions between selected portions to form a contiguoustraining course.
 10. The computer program product of claim 1, whereinthe request specifies a temporal criterion for the specified athleticevent, and wherein a cognitive computing system performs a cognitivecomputing analysis of a corpus of information to predict at least one ofphysical features or environmental characteristics of the specifiedathletic event corresponding to the temporal criterion specified in therequest.
 11. An apparatus comprising: a processor; and a memory coupledto the processor, wherein the memory comprises instructions which, whenexecuted by the processor, cause the processor to: receive a requestfrom a client computing device associated with a user, the request beingto generate a personalized training regimen for a specified athleticevent occurring at a future time; extract, by a cognitive computingsystem, event information comprising at least one of physical featuresor environmental features of one or more geographical segments of thespecified athletic event based on an ingestion of first data regardingthe specified athletic event by the cognitive computing system andgeneration, by the cognitive computing system, of a first set offeatures corresponding to the specified athletic event extracted fromthe ingested first data; identify, by the cognitive computing system,based on the event information, geographical region information from aknowledge base, for one or more portions of a geographical region withina specified geographical range of a home location associated with theuser, wherein the one or more portions approximate at least one of thephysical features or environmental features of the one or moregeographical segments associated with the specified athletic eventwithin a predetermined tolerance, wherein the identification of thegeographical region information is based on a generation, by thecognitive computing system, of a second set of features comprising atleast one of physical features or environmental features correspondingto the one or more portions of the geographical region extracted fromthe ingested second data, and a cognitive comparison of the first set offeatures and the second set of features using machine learning logicthat learns weights associated with different types of features througha machine learning process and applies the weights to the differenttypes of features present in the second set of features via one or morefunctions to score the one or more portions of the geographical region;generate, by the cognitive computing system, a training course at leastby combining a selected set of the portions of the geographical regionbased on an evaluation, by the cognitive computing system, of a level ofmatching, for each portion of the geographical region in the set ofportions, based on the scores associated with the one or more portionsof the geographical region generated by the machine learning logic; andtransmit, by a personalized training recommendation engine, thegenerated training course to the client computing device forpresentation to the user as the personalized training regimen for use bythe user in preparing for the specified athletic event.
 12. Theapparatus of claim 11, wherein the event information includes one ormore of a date of the specified athletic event, a location of thespecified athletic event, a course map of the specified athletic event,a terrain associated with the course, or historical environmentalcharacteristics associated with the location and the date.
 13. Theapparatus of claim 11, wherein the instructions further cause theprocessor to: monitor, via communication with a wearable health oractivity monitoring device associated with the user, performance of theuser during training on the generated training course to generateperformance data; determine areas of weakness or insufficientperformance by the user on the training course based on an evaluation ofthe performance data; and correlate the areas of weakness orinsufficient performance with characteristics of corresponding portionsof the training course.
 14. The apparatus of claim 13, wherein theinstructions further cause the processor to: correlate the areas ofweakness or insufficient performance, the characteristics ofcorresponding portions of the training course, and one or more exercisesto be performed on one or more pieces of exercise devices to train theuser for those characteristics of the corresponding portions of thetraining course; and present an output to the user to inform them of theareas of weakness or insufficient performance, the characteristics ofthe corresponding portions of the training course, and the one or moreexercises to be performed.
 15. The apparatus of claim 14, whereincorrelating the areas of weakness or insufficient performance, thecharacteristics of corresponding portions of the training course, andone or more exercises to be performed further comprises: correlating theareas of weakness or insufficient performance with types of motions usedat the corresponding portions of the training course; and correlatingthe types of motions with the one or more exercises to be performed onone or more pieces of exercise devices to train the user.
 16. Theapparatus of claim 13, wherein the instructions further cause theprocessor to: modify the training course to include one or more otherportions of the geographical region, not previously in the set ofportions, based on the correlation of areas of weakness or insufficientperformance with characteristics of corresponding portions of thetraining course, to thereby generate a modified training course.
 17. Theapparatus of claim 16, wherein the one or more other portions are one ormore other portions that have at least one similar characteristic to thecharacteristics of the corresponding portions of the training course forwhich the user has shown a weakness or insufficient performance.
 18. Theapparatus of claim 16, wherein modifying the training course furthercomprises modifying the training course to include other portions of thegeographical region, not previously in the set of portions, and which donot match characteristics of the one or more geographical segments ofthe specified athletic event, but have at least one of physical featuresor environmental features that will assist the user in strengtheningtheir performance with regard to the identified areas of weakness orinsufficient performance.
 19. The apparatus of claim 11, wherein theinstructions further cause the processor to generate the training courseat least by concatenating the selected set of portions with othernon-selected intervening portions between selected portions to form acontiguous training course.
 20. The apparatus of claim 11, wherein therequest specifies a temporal criterion for the specified athletic event,and wherein a cognitive computing system performs a cognitive computinganalysis of a corpus of information to predict at least one of physicalfeatures or environmental characteristics of the specified athleticevent corresponding to the temporal criterion specified in the request.